const { getAllProducts } = require('../../utils/Requestutil');
// index.js
Page({
  data: {
    active: 0,
    items: [
      {
        icon: '/images/clothes.png',
        label: '衣服穿搭',
        url: '/pages/yifuchuanda/yifuchuanda',
      },
      {
        icon: '/images/living.png',
        label: '宿舍用品',
        url: '/pages/susheyongpin/susheyongpin'
      },
      {
        icon: '/images/book.png',
        label: '二手书籍',
        url: '/pages/ershoushuji/ershoushuji'
      },
      {
        icon: '/images/other.png',
        label: '其他',
        url: '/pages/qita/qita'
      },
    ],
    goods: []
  },

  onLoad: async function() {
    try{
      // 通过请求获取数据
      const data = await getAllProducts();
      console.log("获取到的数据：",data);
      if(data.code == 0 && data.product){
        // 通过map来遍历数组的每个元素，并返回一个新对象
        const products = data.product.map(item => {
          // 如果item.freeShopping=0的话代表是包邮的
          const isFreeShipping = item.freeShopping === 0;
          // 在瀑布流中只显示第一张照片
          let firstImage = '';
          if (item.imageUrl) {
            try{
              // 将item.imageUrl字符串格式转化为json格式
              const imageUrlArray = JSON.parse(item.imageUrl);
              firstImage = Array.isArray(imageUrlArray) && imageUrlArray.length > 0 ? imageUrlArray[0] : '';
            }catch(error){
              console.log('解析imageUrl出错:', error);
            }
          };
          // 对description解释商品信息进行字数限制和截断
          let productDescription = '';
          if(item.description){
            productDescription = item.description.length > 15 ? item.description.slice(0,15)+'...' : item.description
          }
          // 返回一个新的对象object
          return {
            ...item,
            imgSrc: firstImage || null,
            description: productDescription,
            freeShipping: isFreeShipping
          };
        });
        // 更新数据
        this.setData({
          goods: products
        });
      }
    }catch(err){
      console.log("请求失败", err)
    };
  },

  goToDetail(e) {
    const productId = e.currentTarget.dataset.id;
    wx.navigateTo({
      url: `/pages/shangpinxiangqing/shangpinxiangqing?id=${productId}`
    });
  },

  navigateTo(event) {
    const index = event.currentTarget.dataset.index; // 获取当前点击项的索引
    const url = this.data.items[index].url; // 根据索引获取对应的 URL
    wx.navigateTo({ url });
  },
  sousuo: function() {
    // 跳转到搜索页面
    wx.navigateTo({
      url: '/pages/sousuo/sousuo'
    });
  },

  onChange(event) {
    const index = event.detail.index;  // 获取当前选中的 tab 索引
    console.log("切换到的标签索引是:", index);

    // 根据索引跳转到不同页面
    switch(index) {
      case 0:
        wx.navigateTo({
          url: '/pages/index/index',  // 跳转到推荐页面
        });
        break;
      case 1:
        wx.navigateTo({
          url: '/pages/my/my',  // 跳转到同城页面
        });
        break;
      case 2:
        wx.navigateTo({
          url: '/pages/school/school',  // 跳转到同校页面
        });
        break;
      case 3:
        wx.navigateTo({
          url: '/pages/follow/follow',  // 跳转到关注页面
        });
        break;
    }
  },
});
